// 形状文本自动根据内容改变大小, 设置字体、字体大小、字体样式
package main

import (
	app "gitee.com/go_888/xcgui/xcgui/app"
	font "gitee.com/go_888/xcgui/xcgui/font"
	widget "gitee.com/go_888/xcgui/xcgui/widget"
	window "gitee.com/go_888/xcgui/xcgui/window"
	xcc "gitee.com/go_888/xcgui/xcgui/xcc"
)

func main() {
	a := app.X创建(true)
	a.X启用DPI(true)
	a.X启用自动DPI(true)
	w := window.X创建窗口(0, 0, 500, 500, "ShapeText", 0, xcc.X窗口样式_默认样式)

	st := widget.X创建形状文本(15, 35, 100, 30, "测试字体大小", w.X句柄)
	// 自动根据内容改变大小
	st.X布局项设置宽度(xcc.X布局大小类型_自动大小, -1)
	st.X布局项设置高度(xcc.X布局大小类型_自动大小, -1)

	// 设置字体大小
	st.X设置字体(font.X创建(50).X句柄)
	// 设置个新字体， 粗体
	// st.SetFont(font.NewEX("幼圆", 50, xcc.FontStyle_Bold).Handle)

	shapeText := widget.X创建形状文本(15, 235, 150, 30, "测试文字自动换行测试文字自动换行测试文字自动换行测试文字自动换行测试文字自动换行测试文字自动换行测试文字自动换行测试文字自动换行", w.X句柄)
	shapeText.X设置文本对齐(xcc.X文本对齐_左对齐 | xcc.X文本对齐_顶对齐) // 置文本对齐方式
	shapeText.X布局项设置高度(xcc.X布局大小类型_自动大小, -1)               // 高度自动

	w.X显示(true)
	a.X运行()
	a.X退出()
}
